import Vue from 'vue'
import Vuex from 'vuex'
import { login } from '../api/user'
// 导入本地持久化token的方法
import * as auth from '../utils/auth'
// 导入vuex子模块
import chat from './modules/chat'
// 导入后台接口请求方法

// export default {
//   components: {
//     Name
//   },
// }
Vue.use(Vuex)

export default new Vuex.Store({
  state: {
    // /存储登录后的token
    user: auth.getToken() || {}
    // user: {}
  },
  mutations: {
    // 存
    setToken (state, token) {
      // 存到内存
      state.user = token
      // 存到本地
      auth.setToken(token)
    },
    // 删
    delToken (state) {
      state.user = {}
      auth.delToken()
    }
  },
  actions: {
    // 登录接口请求
    async getToken ({ commit }, form) {
      const { data } = await login(form)
      console.log('token', data)
      commit('setToken', data)
    }
  },
  modules: {
    chat
  }
})
